//引入express模块
const express=require('express');
//引入连接池对象
const pool=require('../pool.js');
//创建路由器对象
const c=express.Router();
//1.添加优惠卷信息
c.post('/',(req,res,next)=>{
  //1.1获取post请求的数据
  let obj=req.body;
  //1.2循环验证
  let i=400;
//   for(let k in obj){
//    if(!obj[k]){
//      res.send({code:i,msg:k+'不能为空'});
// 	 return;
//    } 
//   }
  //1.3执行SQL命令
  pool.query('insert into tm_coupon set?',[obj],(err,result)=>{
	  console.log(err);
    if(err){
	  next(err);
	  return;
	}
	if(result.affectedRows===0){
	  res.send({code:201,msg:'添加失败'});
	}else{
	  res.send({code:200,msg:'添加成功'});
	}
  });
})
//2.删除优惠卷信息
c.delete('/:cid',(req,res,next)=>{
  //5.1获取路由传参的数据
  let obj=req.params;
  //console.log(obj);
  //路由传参不传编号，请求不到这个路由
  //5.2执行SQL命令
  pool.query('delete from tm_coupon where cid=?',[obj.cid],(err,result)=>{
	if(err){
	  next(err);
	  return;
	}
	//检测删除是否成功
	console.log(result)
	//结果是对象，如果对象下affectedRows为0说明删除失败，否则删除成功
	if (result.affectedRows===0)
	{
		res.send({code:201,msg:'删除失败'});
	}else {
	    res.send({code:200,msg:'删除成功'});
	}
  });
})
//3.修改优惠卷信息
c.put('/',(req,res,next)=>{
	//3.1获取传递的数据
  let obj=req.body;
  //console.log(obj);
  //3.2循环验证
  let i=400;
  for(let k in obj){
	  i++
    //console.log(k,obj[k]);
	//如果属性值obj[k]为空，则提示k这项不能为空
	if(!obj[k]){
	  res.send({code:i,msg:k+'不能为空'});
	  return;
	}
  }
  //3.3执行SQL命令
  pool.query('update tm_coupon set count=? where cid=?',[obj.count,obj.cid],(err,result)=>{
    if(err){
	  next(err);
	  return;
	}
	console.log(result);
	//结果是对象如果对象下的属性affectedRows为0说明修改失败，否则修改成功
	if(result.affectedRows===0){
	  res.send({code:201,msg:'修改失败'});
	}else {
	  res.send({code:200,msg:'修改成功'});
	}
  });
});
//4.查询优惠卷列表
c.get('/',(req,res,next)=>{
  //4.1获取查询字符串的数据
  let obj=req.query;
  //console.log(obj);
  //4.2判断是否为空，如果为空设置默认值
  if(!obj.pno)  obj.pno=1;//默认第1页
  if(!obj.count) obj.count=2;//默认显示2条数据
  //console.log(obj);
  //计算开始的值
  let start=(obj.pno-1)*obj.count;
  //将每页数据量转为整型
  let size=parseInt(obj.count);
  //执行SQL命令
  pool.query('select * from tm_coupon',(err,result)=>{
	if(err){
	  next(err);
	  return;
	}
    res.send({
	  code:200,
	  msg:'查询成功',
	  data:result//把查询的数据响应
	});
  });
});
//导出路由器
module.exports=c;


